Fix a memory leak in gtk_label_compose_effective_attrs()
authorJonh Wendell <jwendell@gnome.org>
Tue, 22 Dec 2009 14:18:05 +0000 (11:18 -0300)
committerJonh Wendell <jwendell@gnome.org>
Tue, 22 Dec 2009 14:46:08 +0000 (11:46 -0300)
gtk/gtklabel.c

index 9a3dbbbe75a2dec5405e7839f3a3d5e70183157b..73e1f376a1c8a5b3f1c297a0bf8ebb385f6471dc 100644 (file)
@@ -1815,17 +1815,20 @@ gtk_label_compose_effective_attrs (GtkLabel *label)
       if (label->effective_attrs)
        {
          if ((iter = pango_attr_list_get_iterator (label->attrs)))
-           do 
-             {
-               iter_attrs = pango_attr_iterator_get_attrs (iter);
-               for (l = iter_attrs; l; l = l->next)
-                 {
-                   attr = l->data;
-                   pango_attr_list_insert (label->effective_attrs, attr);
-                 }
-               g_slist_free (iter_attrs);
-             }
-           while (pango_attr_iterator_next (iter));
+           {
+             do
+               {
+                 iter_attrs = pango_attr_iterator_get_attrs (iter);
+                 for (l = iter_attrs; l; l = l->next)
+                   {
+                     attr = l->data;
+                     pango_attr_list_insert (label->effective_attrs, attr);
+                   }
+                 g_slist_free (iter_attrs);
+               }
+             while (pango_attr_iterator_next (iter));
+             pango_attr_iterator_destroy (iter);
+           }
        }
       else
        label->effective_attrs =